package com.hk.admin.common.base.controller;


import com.hk.admin.common.base.dto.message.Message;
import com.hk.admin.common.model.system.UserModel;
import com.hk.admin.common.util.ExceptionUtil;
import com.hk.admin.common.util.MessageUtil;
import com.hk.admin.common.util.UserDetailUtil;
import org.springframework.http.ResponseEntity;

/**
 * <br>
 * <b>功能：</b>基本控制器<br>
 * <b>作者：</b>Pan.ShiJu<br>
 * <b>日期：</b>2017/6/1 17:44<br>
 */
public class BaseController {

    /**
     * 当前登录用户
     */
    protected UserModel getUserDetail() {
        return UserDetailUtil.getCurrentUser();
    }

    /**
     * 返回错误信息
     *
     * @param errorMsg 错误信息
     */
    protected ResponseEntity<Message> error(String errorMsg) {
        return MessageUtil.error(errorMsg);
    }

    /**
     * 错误提示信息
     *
     * @param errorCode 错误状态码
     * @param errorMsg  错误信息
     */
    protected ResponseEntity<Message> error(Integer errorCode, String errorMsg) {
        return MessageUtil.error(errorCode, errorMsg);
    }

    /**
     * 返回正确信息
     */
    protected ResponseEntity<Message> success(Object msg) {
        return MessageUtil.success(msg);
    }

    /**
     * 抛出错误信息
     */
    protected void throwError(String errorMsg) {
        ExceptionUtil.throwError(errorMsg);
    }

    /**
     * 抛出错误信息
     */
    protected void throwError(Integer code, String msg) {
        ExceptionUtil.throwError(code, msg);
    }


}
